package com.maxcar.core.wechat;  
  
import org.apache.log4j.Logger;

import com.maxcar.core.wechat.entity.FormatXmlProcess;
import com.maxcar.core.wechat.entity.ReceiveXmlEntity;
import com.maxcar.core.wechat.entity.ReceiveXmlProcess;
  
/** 
 * 微信xml消息处理流程逻辑类 
 * @author ldc 
 * 
 */  
public class WeChatProcess {  
    /** 
     * 解析处理xml、获取智能回复结果（通过图灵机器人api接口） 
     * @param xml 接收到的微信数据 
     * @return  最终的解析结果（xml格式数据） 
     */  
    public String processWechatMag(String xml){  
        /** 解析xml数据 */  
        ReceiveXmlEntity xmlEntity = new ReceiveXmlProcess().getMsgEntity(xml);  
          
        String result = "";  
        if("text".endsWith(xmlEntity.getMsgType())){  
            //result = new TulingApiProcess().getTulingResult(xmlEntity.getContent());  
        }  
        if("event".equals(xmlEntity.getMsgType())){
        	result = new FormatXmlProcess().formatXmlAnswerEvent(xmlEntity.getFromUserName(), xmlEntity.getToUserName(), xmlEntity.getEvent(), xmlEntity.getEventKey(), xmlEntity.getMenuId());
        }
        /** 此时，如果用户输入的是“你好”，在经过上面的过程之后，result为“你也好”类似的内容  
         *  因为最终回复给微信的也是xml格式的数据，所有需要将其封装为文本类型返回消息 
         * */  
        //result = new FormatXmlProcess().formatXmlAnswer(xmlEntity.getFromUserName(), xmlEntity.getToUserName(), result);  
        Logger.getRootLogger().info("result--->"+result);
        return result;  
    }  
}  